package view.console;

import java.rmi.AlreadyBoundException;
import java.rmi.NotBoundException;
import java.rmi.RemoteException;

import rmi.RemoteObserver;
import rmi.UtilitairesRmi;
import server.models.tireur.ITireur;
import server.models.tireur.Tireur;

public class ConsoleTourView implements RemoteObserver {

	private Console console = null;
	
	public ConsoleTourView(Console console, ITireur tireur, String nomClient) {
		try {
			tireur.addObserver((RemoteObserver)UtilitairesRmi.getInstance().obtenirEtBind("ConsoleTourView_" + nomClient, this));
		} catch (RemoteException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (AlreadyBoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (NotBoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		this.console = console;
	}

	@Override
	public void update(Object tireur, Object arg1) {
		ITireur tireurUpdate = ((ITireur)tireur);
		
		try {
			console.ajouterTexte("C'est au tour de " + tireurUpdate.getSurnom() + " de jouer.");
		} catch (RemoteException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

